package top.jacktgq.lock.jmm.visibility;

import top.jacktgq.utils.LogUtils;
import top.jacktgq.utils.Sleeper;

/**
 * 
 * @Title: VisibilityDemo.java 
 * @Package top.jacktgq.lock.jmm.visibility 
 * @Description: java内存模型之可见性
 * @author CandyWall   
 * @date 2020年11月2日 下午2:55:12 
 * @version V1.0
 */
public class VisibilityProblem {
	 private static boolean isRunning = true;
	
	public static void main(String[] args) {
		Thread t = new Thread(() -> {
			while(isRunning) {
				//如果while循环中什么事都不做，那么就不能通过改变isRunning的值来使循环退出
				//System.out.println("hello");
			}
		});
		t.start();
		
		Sleeper.sleep(1);
		
		LogUtils.log("VisibilityDemo1", "停止t线程");
		//线程t不会如预想的停下来
		isRunning = false;
	}
}
